import java.util.ArrayList;
import java.util.concurrent.*;
class Database {
    public static int keySpaceNumber;
    public static int CFSNumber;
    public static int partitionsNumber;
    public static int BTreeRowNumber;
    public static int columnType;
    public static int BufferCellNumber;
    public static int StringSize;
    public static int bufferSize;
    public static int iterNumber;
    public static int inMemoryNumber;
}
class org_apache_cassandra_db_Keyspace {
    public static Object logger;
    public static javaw_lang_String TEST_FAIL_WRITES_KS;
    public static boolean TEST_FAIL_WRITES;
    public static int TEST_FAIL_MV_LOCKS_COUNT;
    public Object metric;
    public org_apache_cassandra_schema_KeyspaceMetadata metadata;
    public static org_apache_cassandra_utils_concurrent_OpOrder writeOrder;
    public javaw_util_HashMap_CFS columnFamilyStores;
    public Object replicationStrategy;
    public Object viewManager;
    public Object writeHandler;
    public Object replicationParams;
    public Object repairManager;
    public org_apache_cassandra_schema_Schema schema;
    public static boolean initialized;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_ColumnFamilyStore {
    public static Object logger;
    public static Object flushExecutor;
    public static Object postFlushExecutor;
    public static Object reclaimExecutor;
    public static Object perDiskflushExecutors;
    public static javaw_lang_String[] COUNTER_NAMES;
    public static javaw_lang_String[] COUNTER_DESCS;
    public static Object COUNTER_COMPOSITE_TYPE;
    public static javaw_lang_String SAMPLING_RESULTS_NAME;
    public static javaw_lang_String SNAPSHOT_TRUNCATE_PREFIX;
    public static javaw_lang_String SNAPSHOT_DROP_PREFIX;
    public static javaw_lang_String TOKEN_DELIMITER;
    public static int RING_VERSION_IRRELEVANT;
    public org_apache_cassandra_db_Keyspace keyspace;
    public javaw_lang_String name;
    public org_apache_cassandra_schema_TableMetadataRef metadata;
    public javaw_lang_String mbeanName;
    public javaw_lang_String oldMBeanName;
    public boolean valid;
    public Object memtableFactory;
    public org_apache_cassandra_db_memtable_SkipListMemtable data;
    public org_apache_cassandra_utils_concurrent_OpOrder readOrdering;
    public Object sstableIdGenerator;
    public Object indexManager;
    public Object viewManager;
    public org_apache_cassandra_utils_DefaultValue minCompactionThreshold;
    public org_apache_cassandra_utils_DefaultValue maxCompactionThreshold;
    public org_apache_cassandra_utils_DefaultValue crcCheckChance;
    public Object compactionStrategyManager;
    public org_apache_cassandra_db_Directories directories;
    public Object metric;
    public long sampleReadLatencyMicros;
    public long additionalWriteLatencyMicros;
    public Object writeHandler;
    public Object streamManager;
    public Object repairManager;
    public Object topPartitions;
    public Object sstableImporter;
    public boolean compactionSpaceCheck;
    public Object partitionKeySetIgnoreGcGrace;
    public Object diskBoundaryManager;
    public Object cachedShardBoundaries;
    public boolean neverPurgeTombstones;
    public Object paxosRepairHistory;
    public static Object DO_NOT_TRACK;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_schema_Schema {
    public static javaw_lang_String logger;
    public static org_apache_cassandra_schema_Schema instance;
    public org_apache_cassandra_schema_Keyspaces distributedKeyspaces;
    public org_apache_cassandra_schema_Keyspaces distributedAndLocalKeyspaces;
    public org_apache_cassandra_schema_Keyspaces localKeyspaces;
    public org_apache_cassandra_schema_TableMetadataRefCache tableMetadataRefCache;
    public Object keyspaceInstances;
    public javaw_util_UUID version;
    public Object schemaChangeNotifier;
    public javaw_lang_String updateHandler;
    public boolean online;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_memtable_Memtable_Factory {

}
class javaw_util_concurrent_atomic_AtomicLongFieldUpdater {

}
class javaw_util_Comparator {

}
class org_apache_cassandra_db_PartitionPosition_RowPositionSerializer {

}
class org_apache_cassandra_utils_bytecomparable_ByteComparable {
    public static org_apache_cassandra_utils_bytecomparable_ByteComparable EMPTY;
}
class javaw_util_concurrent_atomic_AtomicIntegerFieldUpdater {

}
class javaw_util_concurrent_atomic_AtomicReferenceFieldUpdater {

}
class org_apache_cassandra_utils_memory_MemtablePool {
    public Object cleaner;
    public Object onHeap;
    public Object offHeap;
    public Object blockedOnAllocating;
    public Object numPendingTasks;
    public Object hasRoom;
    public static javaw_util_concurrent_atomic_AtomicLongFieldUpdater reclaimingUpdater;
    public static javaw_util_concurrent_atomic_AtomicLongFieldUpdater allocatedUpdater;
    public static javaw_util_concurrent_atomic_AtomicLongFieldUpdater nextCleanUpdater;
}
class org_apache_cassandra_db_memtable_SkipListMemtable {
    public static Object logger;
    public static org_apache_cassandra_db_memtable_Memtable_Factory FACTORY;
    public static int ROW_OVERHEAD_HEAP_SIZE;
    public javaw_util_concurrent_ConcurrentSkipListMap partitions;
    public Object liveDataSize;
    public static boolean _assertionsDisabled;
    public static org_apache_cassandra_utils_memory_MemtablePool MEMORY_POOL;
    public org_apache_cassandra_db_ColumnFamilyStore owner;
    public org_apache_cassandra_utils_memory_SlabAllocator allocator;
    public Object initialComparator;
    public org_apache_cassandra_db_memtable_Memtable_Factory initialFactory;
    public long creationNano;
    public Object approximateCommitLogLowerBound;
    public javaw_util_concurrent_atomic_AtomicReference commitLogLowerBound;
    public Object writeBarrier;
    public javaw_util_concurrent_atomic_AtomicReference commitLogUpperBound;
    public javaw_util_concurrent_atomic_AtomicReference flushTransaction;
    public Object currentOperations;
    public Object columnsCollector;
    public Object statsCollector;
    public javaw_util_concurrent_atomic_AtomicLong minTimestamp;
    public javaw_util_concurrent_atomic_AtomicLong minLocalDeletionTime;
    public org_apache_cassandra_schema_TableMetadataRef metadata;
    public static long NO_MIN_TIMESTAMP;
}
class javaw_util_concurrent_atomic_AtomicLong {
    public static long serialVersionUID;
    public static boolean VM_SUPPORTS_LONG_CAS;
    public static Object U;
    public static long VALUE;
    public long value;
}
class org_apache_cassandra_db_BufferDecoratedKey {
    public javaw_nio_HeapByteBuffer key;
    public static boolean _assertionsDisabled;
    public static javaw_util_Comparator comparator;
    public Object token;
    public static org_apache_cassandra_db_PartitionPosition_RowPositionSerializer serializer;
    public static org_apache_cassandra_utils_bytecomparable_ByteComparable EMPTY;
}
class org_apache_cassandra_db_rows_ColumnData {
    public static javaw_util_Comparator comparator;
    public static Object noOp;
    public org_apache_cassandra_schema_ColumnMetadata column;
}
class org_apache_cassandra_db_rows_Cell_Serializer {
    public static int IS_DELETED_MASK;
    public static int IS_EXPIRING_MASK;
    public static int HAS_EMPTY_VALUE_MASK;
    public static int USE_ROW_TIMESTAMP_MASK;
    public static int USE_ROW_TTL_MASK;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_partitions_AtomicBTreePartition {
    public static long EMPTY_SIZE;
    public static int TRACKER_NEVER_WASTED;
    public static int TRACKER_PESSIMISTIC_LOCKING;
    public static int ALLOCATION_GRANULARITY_BYTES;
    public static long EXCESS_WASTE_BYTES;
    public static int EXCESS_WASTE_OFFSET;
    public static int CLOCK_SHIFT;
    public static javaw_util_concurrent_atomic_AtomicIntegerFieldUpdater wasteTrackerUpdater;
    public static javaw_util_concurrent_atomic_AtomicReferenceFieldUpdater refUpdater;
    public int wasteTracker;
    public org_apache_cassandra_utils_memory_SlabAllocator allocator;
    public org_apache_cassandra_db_partitions_BTreePartitionData ref;
    public org_apache_cassandra_schema_TableMetadataRef metadata;
    public org_apache_cassandra_db_BufferDecoratedKey partitionKey;
}
class jdkw_internal_misc_Unsafe {
    public static jdkw_internal_misc_Unsafe theUnsafe;
    public static int INVALID_FIELD_OFFSET;
    public static int ARRAY_BOOLEAN_BASE_OFFSET;
    public static int ARRAY_BYTE_BASE_OFFSET;
    public static int ARRAY_SHORT_BASE_OFFSET;
    public static int ARRAY_CHAR_BASE_OFFSET;
    public static int ARRAY_INT_BASE_OFFSET;
    public static int ARRAY_LONG_BASE_OFFSET;
    public static int ARRAY_FLOAT_BASE_OFFSET;
    public static int ARRAY_DOUBLE_BASE_OFFSET;
    public static int ARRAY_OBJECT_BASE_OFFSET;
    public static int ARRAY_BOOLEAN_INDEX_SCALE;
    public static int ARRAY_BYTE_INDEX_SCALE;
    public static int ARRAY_SHORT_INDEX_SCALE;
    public static int ARRAY_CHAR_INDEX_SCALE;
    public static int ARRAY_INT_INDEX_SCALE;
    public static int ARRAY_LONG_INDEX_SCALE;
    public static int ARRAY_FLOAT_INDEX_SCALE;
    public static int ARRAY_DOUBLE_INDEX_SCALE;
    public static int ARRAY_OBJECT_INDEX_SCALE;
    public static int ADDRESS_SIZE;
}
class jdkw_internal_misc_ScopedMemoryAccess {
    public static jdkw_internal_misc_Unsafe UNSAFE;
    public static jdkw_internal_misc_ScopedMemoryAccess theScopedMemoryAccess;
}
class org_apache_cassandra_db_partitions_BTreePartitionData {
    public static org_apache_cassandra_db_partitions_BTreePartitionData EMPTY;
    public static long UNSHARED_HEAP_SIZE;
    public org_apache_cassandra_db_RegularAndStaticColumns columns;
    public org_apache_cassandra_db_DeletionInfo deletionInfo;
    public org_apache_cassandra_db_rows_BTreeRow[] tree;
    public org_apache_cassandra_db_rows_Row staticRow;
    public org_apache_cassandra_db_rows_EncodingStats stats;
}
class org_apache_cassandra_db_rows_BTreeRow {
    public static long EMPTY_SIZE;
    public org_apache_cassandra_db_Clustering clustering;
    public org_apache_cassandra_db_LivenessInfo primaryKeyLivenessInfo;
    public org_apache_cassandra_db_rows_Row_Deletion deletion;
    public org_apache_cassandra_db_rows_BufferCell[] btree;
    public static org_apache_cassandra_db_rows_ColumnData FIRST_COMPLEX_STATIC;
    public static org_apache_cassandra_db_rows_ColumnData FIRST_COMPLEX_REGULAR;
    public static javaw_util_Comparator COLUMN_COMPARATOR;
    public long minLocalDeletionTime;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_rows_BufferCell {
    public static long EMPTY_SIZE;
    public long timestamp;
    public int ttl;
    public int localDeletionTimeUnsignedInteger;
    public javaw_nio_HeapByteBuffer value;
    public org_apache_cassandra_db_rows_CellPath_SingleItemCellPath path;
    public static boolean _assertionsDisabled;
    public static int NO_TTL;
    public static long NO_DELETION_TIME;
    public static int NO_DELETION_TIME_UNSIGNED_INTEGER;
    public static long MAX_DELETION_TIME;
    public static int MAX_DELETION_TIME_UNSIGNED_INTEGER;
    public static long INVALID_DELETION_TIME;
    public static int MAX_DELETION_TIME_2038_LEGACY_CAP;
    public static javaw_util_Comparator comparator;
    public static org_apache_cassandra_db_rows_Cell_Serializer serializer;
    public static Object noOp;
    public org_apache_cassandra_schema_ColumnMetadata column;
}
class org_apache_cassandra_db_rows_CellPath_SingleItemCellPath {
    public static long EMPTY_SIZE;
    public javaw_nio_HeapByteBuffer value;
    public static boolean _assertionsDisabled;
    public static org_apache_cassandra_db_rows_CellPath_SingleItemCellPath BOTTOM;
    public static org_apache_cassandra_db_rows_CellPath_SingleItemCellPath TOP;
}
class javaw_nio_HeapByteBuffer {
    public static long ARRAY_BASE_OFFSET;
    public static long ARRAY_INDEX_SCALE;
    public static boolean _assertionsDisabled;
    public byte[] hb;
    public int offset;
    public boolean isReadOnly;
    public boolean bigEndian;
    public boolean nativeByteOrder;
    public static jdkw_internal_misc_Unsafe UNSAFE;
    public static jdkw_internal_misc_ScopedMemoryAccess SCOPED_MEMORY_ACCESS;
    public static int SPLITERATOR_CHARACTERISTICS;
    public int mark;
    public int position;
    public int limit;
    public int capacity;
    public long address;
    public Object segment;
}
class javaw_util_HashMap_CFSNode {
    public int hash;
    public org_apache_cassandra_schema_TableId key;
    public org_apache_cassandra_db_ColumnFamilyStore value;
    public javaw_util_HashMap_Node next;
}
class javaw_util_HashMap_Node {
    public int hash;
    public Object key;
    public Object value;
    public javaw_util_HashMap_Node next;
}
class org_apache_cassandra_schema_TableId {
    public javaw_util_UUID id;
    public static boolean _assertionsDisabled;
}
class javaw_util_concurrent_ConcurrentLinkedQueue {
    public static long serialVersionUID;
    public Object head;
    public Object tail;
    public static int MAX_HOPS;
    public static javaw_lang_invoke_VarHandle HEAD;
    public static javaw_lang_invoke_VarHandle TAIL;
    public static javaw_lang_invoke_VarHandle ITEM;
    public static javaw_lang_invoke_VarHandle NEXT;
}
class javaw_lang_invoke_VarHandle {
    public Object vform;
    public boolean exact;
    public Object typesAndInvokers;
    public static javaw_util_function_BiFunction AIOOBE_SUPPLIER;
    public static long VFORM_OFFSET;
    public static boolean _assertionsDisabled;
}
class javaw_util_function_BiFunction {

}
class javaw_util_concurrent_ConcurrentSkipListMap {
    public static long serialVersionUID;
    public javaw_util_Comparator comparator;
    public javaw_util_concurrent_ConcurrentSkipListMap_Index head;
    public Object adder;
    public Object keySet;
    public Object values;
    public Object entrySet;
    public Object descendingMap;
    public static int EQ;
    public static int LT;
    public static int GT;
    public static javaw_lang_invoke_VarHandle HEAD;
    public static javaw_lang_invoke_VarHandle ADDER;
    public static javaw_lang_invoke_VarHandle NEXT;
    public static javaw_lang_invoke_VarHandle VAL;
    public static javaw_lang_invoke_VarHandle RIGHT;
}
class javaw_util_concurrent_ConcurrentSkipListMap_Index {
    public javaw_util_concurrent_ConcurrentSkipListMap_Node node;
    public javaw_util_concurrent_ConcurrentSkipListMap_Index down;
    public javaw_util_concurrent_ConcurrentSkipListMap_Index right;
}
class javaw_util_concurrent_ConcurrentSkipListMap_Node {
    public org_apache_cassandra_db_BufferDecoratedKey key;
    public org_apache_cassandra_db_partitions_AtomicBTreePartition val;
    public javaw_util_concurrent_ConcurrentSkipListMap_Node next;
}
class org_apache_cassandra_schema_TableMetadataRef {
    public org_apache_cassandra_schema_TableId id;
    public javaw_lang_String keyspace;
    public javaw_lang_String name;
    public Object metadata;
    public Object localTableMetadata;
    public Object localCompressionParams;
}
class org_apache_cassandra_utils_memory_SlabAllocator {
    public static Object logger;
    public static int REGION_SIZE;
    public static int MAX_CLONED_SIZE;
    public static javaw_util_concurrent_ConcurrentLinkedQueue RACE_ALLOCATED;
    public javaw_util_concurrent_atomic_AtomicReference currentRegion;
    public Object regionCount;
    public javaw_util_concurrent_ConcurrentLinkedQueue offHeapRegions;
    public javaw_util_concurrent_atomic_AtomicLong unslabbedSize;
    public boolean allocateOnHeapOnly;
    public Object ensureOnHeap;
    public static boolean _assertionsDisabled;
    public org_apache_cassandra_utils_memory_MemtableAllocator_SubAllocator onHeap;
    public org_apache_cassandra_utils_memory_MemtableAllocator_SubAllocator offHeap;
}
class org_apache_cassandra_utils_memory_MemtableAllocator_SubAllocator {
    public Object parent;
    public Object state;
    public long owns;
    public long reclaiming;
    public static javaw_util_concurrent_atomic_AtomicLongFieldUpdater ownsUpdater;
    public static javaw_util_concurrent_atomic_AtomicLongFieldUpdater reclaimingUpdater;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_RegularAndStaticColumns {
    public static org_apache_cassandra_db_RegularAndStaticColumns NONE;
    public static long EMPTY_SIZE;
    public Object statics;
    public Object regulars;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_schema_ColumnMetadata {
    public static javaw_util_Comparator asymmetricColumnDataComparator;
    public static int NO_POSITION;
    public Object kind;
    public int position;
    public javaw_util_Comparator cellPathComparator;
    public javaw_util_Comparator asymmetricCellPathComparator;
    public javaw_util_Comparator cellComparator;
    public int hash;
    public long comparisonOrder;
    public Object mask;
    public static boolean _assertionsDisabled;
    public javaw_lang_String ksName;
    public javaw_lang_String cfName;
    public Object name;
    public Object type;
}
class org_apache_cassandra_db_DeletionInfo {
    public static org_apache_cassandra_db_DeletionInfo LIVE;
}
class org_apache_cassandra_db_rows_Row {

}
class org_apache_cassandra_db_rows_EncodingStats {
    public static long TIMESTAMP_EPOCH;
    public static int DELETION_TIME_EPOCH;
    public static int TTL_EPOCH;
    public static org_apache_cassandra_db_rows_EncodingStats NO_STATS;
    public static long HEAP_SIZE;
    public static org_apache_cassandra_db_rows_EncodingStats_Serializer serializer;
    public long minTimestamp;
    public long minLocalDeletionTime;
    public int minTTL;
}
class org_apache_cassandra_db_rows_EncodingStats_Serializer {

}
class org_apache_cassandra_db_Clustering_Serializer {
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_Clustering {
    public static org_apache_cassandra_db_Clustering_Serializer serializer;
    public static org_apache_cassandra_db_Clustering STATIC_CLUSTERING;
    public static org_apache_cassandra_db_Clustering EMPTY;
}
class org_apache_cassandra_db_rows_Row_Deletion {
    public static org_apache_cassandra_db_rows_Row_Deletion LIVE;
    public static long EMPTY_SIZE;
    public Object time;
    public boolean isShadowable;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_db_LivenessInfo {
    public static long NO_TIMESTAMP;
    public static int NO_TTL;
    public static int EXPIRED_LIVENESS_TTL;
    public static long NO_EXPIRATION_TIME;
    public static org_apache_cassandra_db_LivenessInfo EMPTY;
    public static long UNSHARED_HEAP_SIZE;
    public long timestamp;
    public static boolean _assertionsDisabled;
}
class javaw_util_concurrent_atomic_AtomicReference {
    public static long serialVersionUID;
    public static javaw_lang_invoke_VarHandle VALUE;
    public Object value;
}
class org_apache_cassandra_db_Directories {
    public static Object logger;
    public static javaw_lang_String BACKUPS_SUBDIR;
    public static javaw_lang_String SNAPSHOT_SUBDIR;
    public static javaw_lang_String TMP_SUBDIR;
    public static javaw_lang_String SECONDARY_INDEX_NAME_SEPARATOR;
    public static org_apache_cassandra_db_Directories_DataDirectories dataDirectories;
    public Object metadata;
    public Object[] paths;
    public Object[] dataPaths;
    public Object canonicalPathToDD;
}
class org_apache_cassandra_db_Directories_DataDirectories {
    public Object[] localSystemKeyspaceDataDirectories;
    public Object[] nonLocalSystemKeyspacesDirectories;
}
class org_apache_cassandra_utils_DefaultValue {
    public Object originalValue;
    public Object currentValue;
}
class javaw_util_List {

}
class javaw_util_UUID {
    public static long serialVersionUID;
    public long mostSigBits;
    public long leastSigBits;
    public static Object jla;
    public static byte[] NIBBLES;
    public static boolean _assertionsDisabled;
}
class org_apache_cassandra_schema_TableMetadataRefCache {
    public static org_apache_cassandra_schema_TableMetadataRefCache EMPTY;
    public Object metadataRefs;
    public Object metadataRefsByName;
    public Object indexMetadataRefs;
}
class org_apache_cassandra_schema_Keyspaces {
    public static org_apache_cassandra_schema_Keyspaces NONE;
    public Object keyspaces;
    public Object tables;
}
class javaw_util_HashMap_CFS {
    public static long serialVersionUID;
    public static int DEFAULT_INITIAL_CAPACITY;
    public static int MAXIMUM_CAPACITY;
    public static float DEFAULT_LOAD_FACTOR;
    public static int TREEIFY_THRESHOLD;
    public static int UNTREEIFY_THRESHOLD;
    public static int MIN_TREEIFY_CAPACITY;
    public javaw_util_HashMap_CFSNode[] table;
    public Object entrySet;
    public int size;
    public int modCount;
    public int threshold;
    public float loadFactor;
    public Object keySet;
    public Object values;
}
class org_apache_cassandra_utils_concurrent_OpOrder {
    public static int FINISHED;
    public Object current;
}
class org_apache_cassandra_schema_KeyspaceMetadata {
    public javaw_lang_String name;
    public Object kind;
    public Object params;
    public Object tables;
    public Object views;
    public Object types;
    public Object userFunctions;
    public static javaw_util_Comparator NAME_COMPARATOR;
}
class javaw_lang_Object {

}
class javaw_lang_String {
    public byte[] value;
    public byte coder;
    public int hash;
    public boolean hashIsZero;
    public static long serialVersionUID;
    public static boolean COMPACT_STRINGS;
    public static javaw_io_ObjectStreamField[] serialPersistentFields;
    public static char REPL;
    public static javaw_util_Comparator CASE_INSENSITIVE_ORDER;
    public static byte LATIN1;
    public static byte UTF16;
}
class javaw_io_ObjectStreamField {
    public javaw_lang_String name;
    public javaw_lang_String signature;
    public javaw_lang_Class type;
    public javaw_lang_String typeSignature;
    public boolean unshared;
    public Object field;
    public int offset;
}
class javaw_lang_Class {
    public static int ANNOTATION;
    public static int ENUM;
    public static int SYNTHETIC;
    public Object cachedConstructor;
    public javaw_lang_String name;
    public Object module;
    public Object classLoader;
    public Object classData;
    public javaw_lang_String packageName;
    public javaw_lang_Class componentType;
    public static javaw_security_ProtectionDomain allPermDomain;
    public Object reflectionData;
    public int classRedefinedCount;
    public Object genericInfo;
    public static javaw_lang_Class[] EMPTY_CLASS_ARRAY;
    public static long serialVersionUID;
    public static javaw_io_ObjectStreamField[] serialPersistentFields;
    public static jdkw_internal_reflect_ReflectionFactory reflectionFactory;
    public Object[] enumConstants;
    public Object enumConstantDirectory;
    public Object annotationData;
    public Object annotationType;
    public Object classValueMap;
}
class javaw_security_ProtectionDomain {
    public static boolean filePermCompatInPD;
    public Object codesource;
    public Object classloader;
    public Object[] principals;
    public Object permissions;
    public boolean hasAllPerm;
    public boolean staticPermissions;
    public Object key;
}
class jdkw_internal_reflect_ReflectionFactory {
    public static boolean initted;
    public static jdkw_internal_reflect_ReflectionFactory soleInstance;
    public static javaw_lang_reflect_Method hasStaticInitializerMethod;
    public static boolean noInflation;
    public static int inflationThreshold;
    public static boolean disableSerialConstructorChecks;
    public Object langReflectAccess;
    public static boolean _assertionsDisabled;
}
class javaw_lang_reflect_Method {
    public javaw_lang_Class clazz;
    public int slot;
    public javaw_lang_String name;
    public javaw_lang_Class returnType;
    public javaw_lang_Class[] parameterTypes;
    public javaw_lang_Class[] exceptionTypes;
    public int modifiers;
    public javaw_lang_String signature;
    public Object genericInfo;
    public byte[] annotations;
    public byte[] parameterAnnotations;
    public byte[] annotationDefault;
    public Object methodAccessor;
    public javaw_lang_reflect_Method root;
    public boolean hasRealParameterData;
    public Object[] parameters;
    public Object declaredAnnotations;
    public static int PUBLIC;
    public static int DECLARED;
    public boolean override;
    public static jdkw_internal_reflect_ReflectionFactory reflectionFactory;
    public Object accessCheckCache;
    public static boolean printStackWhenAccessFails;
    public static boolean printStackPropertiesSet;
}
class org_apache_cassandra_metrics_KeyspaceMetrics {
    public Object memtableLiveDataSize;
    public Object memtableOnHeapDataSize;
    public Object memtableOffHeapDataSize;
    public Object allMemtablesLiveDataSize;
    public Object allMemtablesOnHeapDataSize;
    public Object allMemtablesOffHeapDataSize;
    public Object memtableColumnsCount;
    public Object memtableSwitchCount;
    public Object pendingFlushes;
    public Object pendingCompactions;
    public Object liveDiskSpaceUsed;
    public Object unreplicatedLiveDiskSpaceUsed;
    public Object uncompressedLiveDiskSpaceUsed;
    public Object unreplicatedUncompressedLiveDiskSpaceUsed;
    public Object totalDiskSpaceUsed;
    public Object compressionMetadataOffHeapMemoryUsed;
    public Object readLatency;
    public Object rangeLatency;
    public Object writeLatency;
    public Object sstablesPerReadHistogram;
    public Object sstablesPerRangeReadHistogram;
    public Object tombstoneScannedHistogram;
    public Object liveScannedHistogram;
    public Object colUpdateTimeDeltaHistogram;
    public Object viewLockAcquireTime;
    public Object viewReadTime;
    public Object casPrepare;
    public Object casPropose;
    public Object casCommit;
    public Object writeFailedIdealCL;
    public Object idealCLWriteLatency;
    public Object speculativeRetries;
    public Object speculativeFailedRetries;
    public Object speculativeInsufficientReplicas;
    public Object additionalWrites;
    public Object repairsStarted;
    public Object repairsCompleted;
    public Object repairTime;
    public Object repairPrepareTime;
    public Object anticompactionTime;
    public Object validationTime;
    public Object repairSyncTime;
    public Object bytesValidated;
    public Object partitionsValidated;
    public Object confirmedRepairedInconsistencies;
    public Object unconfirmedRepairedInconsistencies;
    public Object repairedDataTrackingOverreadRows;
    public Object repairedDataTrackingOverreadTime;
    public Object clientTombstoneWarnings;
    public Object clientTombstoneAborts;
    public Object coordinatorReadSizeWarnings;
    public Object coordinatorReadSizeAborts;
    public Object coordinatorReadSize;
    public Object localReadSizeWarnings;
    public Object localReadSizeAborts;
    public Object localReadSize;
    public Object rowIndexSizeWarnings;
    public Object rowIndexSizeAborts;
    public Object rowIndexSize;
    public Object formatSpecificGauges;
    public Object factory;
    public org_apache_cassandra_db_Keyspace keyspace;
    public Object allMetrics;
}
class org_apache_cassandra_db_view_ViewManager {
    public static Object logger;
    public static com_google_common_util_concurrent_Striped LOCKS;
    public static boolean enableCoordinatorBatchlog;
    public Object viewsByName;
    public Object viewsByBaseTable;
    public org_apache_cassandra_db_Keyspace keyspace;
    public static boolean _assertionsDisabled;
}
class com_google_common_util_concurrent_Striped {
    public static int LARGE_LAZY_CUTOFF;
    public static int ALL_SET;
}

class Flush extends Thread {
    javaw_util_HashMap_CFSNode[] node;
    public Flush(javaw_util_HashMap_CFSNode[] node) {
        this.node = node;
    }

    @Override
    public void run() {
        Main.flush_CFS(node);
    }
}

class Insert extends Thread {
    javaw_util_HashMap_CFSNode[] node;
    public Insert(javaw_util_HashMap_CFSNode[] node) {
        this.node = node;
    }

    @Override
    public void run() {
        Main.insert_CFS(node);
    }
}

public class Main {
    public static void main(String[] args){
        Database.keySpaceNumber = 10;
        Database.CFSNumber = 10;
        Database.partitionsNumber = 10;
        Database.BTreeRowNumber = 10;
        Database.columnType = 10;
        Database.BufferCellNumber = 100;
        Database.StringSize = 10;
        Database.bufferSize = 20;
        Database.iterNumber = 10;
        Database.inMemoryNumber = 5;
        org_apache_cassandra_db_Keyspace[] keyspaces = new org_apache_cassandra_db_Keyspace[Database.keySpaceNumber];
        prepare_keySpace(keyspaces);
        for(int i = 0; i < Database.inMemoryNumber; i += 1){
            org_apache_cassandra_db_Keyspace space = keyspaces[i];
            javaw_util_HashMap_CFS hashmap = space.columnFamilyStores;
            javaw_util_HashMap_CFSNode[] node = hashmap.table;
            insert_CFS(node);
        }
        for(int i = 0; i < Database.iterNumber; i += 1){
            flush_and_write(keyspaces);
            write_and_flush(keyspaces);
        }
    }
    public static void flush_and_write(org_apache_cassandra_db_Keyspace[] keyspaces){
        ArrayList<Thread> ScopeLocalThreadsPool = new ArrayList<>();

        for(int i = 0; i < Database.inMemoryNumber; i += 1){
            org_apache_cassandra_db_Keyspace space = keyspaces[i];
            javaw_util_HashMap_CFS hashmap = space.columnFamilyStores;
            javaw_util_HashMap_CFSNode[] node = hashmap.table;
            ScopeLocalThreadsPool.add(new Flush(node));
            ScopeLocalThreadsPool.get(ScopeLocalThreadsPool.size()-1).start();
        }
        for(int i = Database.inMemoryNumber; i < Database.keySpaceNumber; i += 1){
            org_apache_cassandra_db_Keyspace space = keyspaces[i];
            javaw_util_HashMap_CFS hashmap = space.columnFamilyStores;
            javaw_util_HashMap_CFSNode[] node = hashmap.table;
            ScopeLocalThreadsPool.add(new Insert(node));
            ScopeLocalThreadsPool.get(ScopeLocalThreadsPool.size()-1).start();
        }
        ScopeLocalThreadsPool.forEach(thread -> {
            try {
                thread.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        });

    }
    public static void write_and_flush(org_apache_cassandra_db_Keyspace[] keyspaces){
        ArrayList<Thread> ScopeLocalThreadsPool = new ArrayList<>();

        for(int i = Database.inMemoryNumber; i < Database.keySpaceNumber; i += 1){
            org_apache_cassandra_db_Keyspace space = keyspaces[i];
            javaw_util_HashMap_CFS hashmap = space.columnFamilyStores;
            javaw_util_HashMap_CFSNode[] node = hashmap.table;
            ScopeLocalThreadsPool.add(new Flush(node));
            ScopeLocalThreadsPool.get(ScopeLocalThreadsPool.size()-1).start();
        }
        for(int i = 0; i < Database.inMemoryNumber; i += 1){
            org_apache_cassandra_db_Keyspace space = keyspaces[i];
            javaw_util_HashMap_CFS hashmap = space.columnFamilyStores;
            javaw_util_HashMap_CFSNode[] node = hashmap.table;
            ScopeLocalThreadsPool.add(new Insert(node));
            ScopeLocalThreadsPool.get(ScopeLocalThreadsPool.size()-1).start();
        }
        ScopeLocalThreadsPool.forEach(thread -> {
            try {
                thread.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        });

    }
    public static void flush_CFS(javaw_util_HashMap_CFSNode[] node){
        for(int i = 0; i < Database.CFSNumber; i += 1){
            org_apache_cassandra_db_ColumnFamilyStore cfs = node[i].value;
            org_apache_cassandra_db_memtable_SkipListMemtable memtable = cfs.data;
            flush_partitions(memtable);
        }
    }
    public static void flush_partitions(org_apache_cassandra_db_memtable_SkipListMemtable memtable){
        javaw_util_concurrent_ConcurrentSkipListMap mapl = memtable.partitions;
        javaw_util_concurrent_ConcurrentSkipListMap_Index index = mapl.head;
        for(int i = 0; i < Database.partitionsNumber; i += 1){
            javaw_util_concurrent_ConcurrentSkipListMap_Node flushnode = index.node;
            org_apache_cassandra_db_partitions_AtomicBTreePartition toflush = flushnode.val;
            org_apache_cassandra_db_partitions_BTreePartitionData flushpartition = toflush.ref;
            org_apache_cassandra_db_rows_BTreeRow[] rows = flushpartition.tree;
            flush_rows(rows);
            index = index.right;
        }
    }
    public static void flush_rows(org_apache_cassandra_db_rows_BTreeRow[] rows){
        for(int i = 0; i < Database.BTreeRowNumber; i += 1){
            org_apache_cassandra_db_rows_BTreeRow flushrow = rows[i];
            org_apache_cassandra_db_rows_BufferCell[] cells = flushrow.btree;
            flush_cells(cells);
            flushrow.btree = null;
        }
    }
    public static void flush_cells(org_apache_cassandra_db_rows_BufferCell[] cells){
        for(int i = 0; i < Database.BufferCellNumber; i += 1){
            javaw_nio_HeapByteBuffer buffer = new javaw_nio_HeapByteBuffer();
            javaw_nio_HeapByteBuffer value = cells[i].value;
            buffer.hb = value.hb;
            value.hb = null;
        }
    }
    public static void insert_CFS(javaw_util_HashMap_CFSNode[] node){
        for(int i = 0; i < Database.CFSNumber; i += 1){
            org_apache_cassandra_db_ColumnFamilyStore cfs = node[i].value;
            org_apache_cassandra_db_memtable_SkipListMemtable memtable = cfs.data;
            insert_partitions(memtable);
        }
    }
    public static void insert_partitions(org_apache_cassandra_db_memtable_SkipListMemtable memtable){
        for(int i = 0; i < Database.partitionsNumber; i += 1){
            org_apache_cassandra_db_BufferDecoratedKey partionkey = create_partitionKey();
            org_apache_cassandra_db_partitions_AtomicBTreePartition atomicbtreepartition = create_atomicpartition(partionkey, memtable);
            javaw_util_concurrent_ConcurrentSkipListMap mapl = memtable.partitions;
            javaw_util_concurrent_ConcurrentSkipListMap_Index index = create_partition_index(partionkey, atomicbtreepartition);
            javaw_util_concurrent_ConcurrentSkipListMap_Index lasthead = mapl.head;
            mapl.head = index;
            index.right = lasthead;
        }
    }
    public static javaw_util_concurrent_ConcurrentSkipListMap_Index create_partition_index(org_apache_cassandra_db_BufferDecoratedKey partionkey, org_apache_cassandra_db_partitions_AtomicBTreePartition atomicbtreepartition){
        javaw_util_concurrent_ConcurrentSkipListMap_Index result = new javaw_util_concurrent_ConcurrentSkipListMap_Index();
        javaw_util_concurrent_ConcurrentSkipListMap_Node node = new javaw_util_concurrent_ConcurrentSkipListMap_Node();
        node.key = partionkey;
        node.val = atomicbtreepartition;
        result.node = node;
        return result;
    }
    public static org_apache_cassandra_db_BufferDecoratedKey create_partitionKey(){
        org_apache_cassandra_db_BufferDecoratedKey result = new org_apache_cassandra_db_BufferDecoratedKey();
        javaw_nio_HeapByteBuffer keybuffer = create_byteBuffer();
        result.key = keybuffer;
        return result;
    }
    public static javaw_nio_HeapByteBuffer create_byteBuffer(){
        javaw_nio_HeapByteBuffer result = new javaw_nio_HeapByteBuffer();
        byte[] data = new byte[Database.bufferSize];
        init_heapByteBuffer(result, data, null);
        return result;
    }
    public static org_apache_cassandra_db_partitions_AtomicBTreePartition create_atomicpartition(org_apache_cassandra_db_BufferDecoratedKey partionkey, org_apache_cassandra_db_memtable_SkipListMemtable memtable){
        org_apache_cassandra_db_partitions_AtomicBTreePartition result = new org_apache_cassandra_db_partitions_AtomicBTreePartition();
        org_apache_cassandra_schema_TableMetadataRef metadata = memtable.metadata;
        org_apache_cassandra_utils_memory_SlabAllocator allocator = memtable.allocator;
        init_AtomicBTreePartitionData(result, metadata, partionkey, allocator);
        result.ref = create_partition();
        return result;
    }
    public static org_apache_cassandra_db_partitions_BTreePartitionData create_partition(){
        org_apache_cassandra_db_partitions_BTreePartitionData result = new org_apache_cassandra_db_partitions_BTreePartitionData();
        org_apache_cassandra_db_rows_BTreeRow[] btree = new org_apache_cassandra_db_rows_BTreeRow[Database.BTreeRowNumber];
        for(int i = 0; i < Database.BTreeRowNumber; i += 1){
            org_apache_cassandra_db_rows_BTreeRow singlerow = create_btreeRow();
            btree[i] = singlerow;
        }
        org_apache_cassandra_db_RegularAndStaticColumns columns = new org_apache_cassandra_db_RegularAndStaticColumns();
        org_apache_cassandra_db_DeletionInfo deletioninfo = new org_apache_cassandra_db_DeletionInfo();
        org_apache_cassandra_db_rows_Row staticrow = new org_apache_cassandra_db_rows_Row();
        org_apache_cassandra_db_rows_EncodingStats stats = new org_apache_cassandra_db_rows_EncodingStats();
        init_BTreePartitionData(result, columns, btree, deletioninfo, staticrow, stats);
        return result;
    }
    public static org_apache_cassandra_db_rows_BTreeRow create_btreeRow(){
        org_apache_cassandra_db_rows_BTreeRow result = new org_apache_cassandra_db_rows_BTreeRow();
        org_apache_cassandra_db_rows_BufferCell[] cells = create_bufferCells();
        org_apache_cassandra_db_Clustering clustering = new org_apache_cassandra_db_Clustering();
        org_apache_cassandra_db_LivenessInfo primarykeylivenessinfo = new org_apache_cassandra_db_LivenessInfo();
        org_apache_cassandra_db_rows_Row_Deletion deletion = new org_apache_cassandra_db_rows_Row_Deletion();
        init_BTreeRow(result, clustering, primarykeylivenessinfo, deletion, cells);
        return result;
    }
    public static org_apache_cassandra_db_rows_BufferCell[] create_bufferCells(){
        org_apache_cassandra_db_rows_BufferCell[] result = new org_apache_cassandra_db_rows_BufferCell[Database.BufferCellNumber];
        for(int i = 0; i < Database.BufferCellNumber; i += 1){
            org_apache_cassandra_db_rows_BufferCell singlecell = new org_apache_cassandra_db_rows_BufferCell();
            org_apache_cassandra_schema_ColumnMetadata metadata = new org_apache_cassandra_schema_ColumnMetadata();
            javaw_nio_HeapByteBuffer data = create_byteBuffer();
            init_bufferCell(singlecell, metadata, data, null);
            result[i] = singlecell;
        }
        return result;
    }
    public static void prepare_keySpace(org_apache_cassandra_db_Keyspace[] keyspaces){
        for(int i = 0; i < Database.keySpaceNumber; i += 1){
            keyspaces[i] = create_keyspace();
        }
    }
    public static org_apache_cassandra_db_Keyspace create_keyspace(){
        javaw_lang_String string = create_string();
        org_apache_cassandra_db_Keyspace result = new org_apache_cassandra_db_Keyspace();
        org_apache_cassandra_schema_Schema schema = new org_apache_cassandra_schema_Schema();
        init_Keyspace(result, string, schema);
        return result;
    }
    public static javaw_lang_String create_string(){
        byte[] context = new byte[Database.StringSize];
        javaw_lang_String result = new javaw_lang_String();
        init_String(result, context);
        return result;
    }
    public static void init_String(javaw_lang_String self, byte[] context){
        self.value = context;
    }
    public static void init_heapByteBuffer(javaw_nio_HeapByteBuffer self, byte[] buf, Object segment){
        self.hb = buf;
        self.segment = segment;
    }
    public static void init_bufferCell(org_apache_cassandra_db_rows_BufferCell self, org_apache_cassandra_schema_ColumnMetadata column, javaw_nio_HeapByteBuffer value, org_apache_cassandra_db_rows_CellPath_SingleItemCellPath path){
        self.column = column;
        self.value = value;
        self.path = path;
    }
    public static void init_BTreeRow(org_apache_cassandra_db_rows_BTreeRow self, org_apache_cassandra_db_Clustering clustering, org_apache_cassandra_db_LivenessInfo primarykeylivenessinfo, org_apache_cassandra_db_rows_Row_Deletion deletion, org_apache_cassandra_db_rows_BufferCell[] btree){
        self.clustering = clustering;
        self.primaryKeyLivenessInfo = primarykeylivenessinfo;
        self.deletion = deletion;
        self.btree = btree;
    }
    public static void init_BTreePartitionData(org_apache_cassandra_db_partitions_BTreePartitionData self, org_apache_cassandra_db_RegularAndStaticColumns columns, org_apache_cassandra_db_rows_BTreeRow[] tree, org_apache_cassandra_db_DeletionInfo deletioninfo, org_apache_cassandra_db_rows_Row staticrow, org_apache_cassandra_db_rows_EncodingStats stats){
        self.columns = columns;
        self.tree = tree;
        self.deletionInfo = deletioninfo;
        self.staticRow = staticrow;
        self.stats = stats;
    }
    public static void init_AtomicBTreePartitionData(org_apache_cassandra_db_partitions_AtomicBTreePartition self, org_apache_cassandra_schema_TableMetadataRef metadata, org_apache_cassandra_db_BufferDecoratedKey partitionkey, org_apache_cassandra_utils_memory_SlabAllocator allocator){
        self.partitionKey = partitionkey;
        self.metadata = metadata;
        self.allocator = allocator;
        self.ref = org_apache_cassandra_db_partitions_BTreePartitionData.EMPTY;
    }
    public static void init_SkipListMemtable(org_apache_cassandra_db_memtable_SkipListMemtable self, javaw_util_concurrent_atomic_AtomicReference commitloglowerbound, org_apache_cassandra_schema_TableMetadataRef metadataref, org_apache_cassandra_db_ColumnFamilyStore owner){
        self.commitLogLowerBound = commitloglowerbound;
        self.metadata = metadataref;
        self.allocator = new org_apache_cassandra_utils_memory_SlabAllocator();
        self.owner = owner;
        self.partitions = new javaw_util_concurrent_ConcurrentSkipListMap();
    }
    public static void init_ColumnFamilyStore(org_apache_cassandra_db_ColumnFamilyStore self, org_apache_cassandra_db_Keyspace keyspace, javaw_lang_String columnfamilyname, Object sstableidgenerator, org_apache_cassandra_schema_TableMetadataRef metadata, org_apache_cassandra_db_Directories directories){
        self.keyspace = keyspace;
        self.name = columnfamilyname;
        self.sstableIdGenerator = sstableidgenerator;
        self.metadata = metadata;
        self.directories = directories;
        self.minCompactionThreshold = new org_apache_cassandra_utils_DefaultValue();
        self.maxCompactionThreshold = new org_apache_cassandra_utils_DefaultValue();
        self.crcCheckChance = new org_apache_cassandra_utils_DefaultValue();
        self.data = create_memtable(self, metadata);
    }
    public static org_apache_cassandra_db_memtable_SkipListMemtable create_memtable(org_apache_cassandra_db_ColumnFamilyStore cfs, org_apache_cassandra_schema_TableMetadataRef metadata){
        org_apache_cassandra_db_memtable_SkipListMemtable memtable = new org_apache_cassandra_db_memtable_SkipListMemtable();
        javaw_util_concurrent_atomic_AtomicReference loglowerbound = new javaw_util_concurrent_atomic_AtomicReference();
        init_SkipListMemtable(memtable, loglowerbound, metadata, cfs);
        return memtable;
    }
    public static void init_Keyspace(org_apache_cassandra_db_Keyspace self, javaw_lang_String keyspacename, org_apache_cassandra_schema_Schema schema){
        self.schema = schema;
        org_apache_cassandra_schema_KeyspaceMetadata metadata = new org_apache_cassandra_schema_KeyspaceMetadata();
        init_metadata(metadata, keyspacename);
        self.metadata = metadata;
        self.metric = new javaw_lang_Object();
        self.viewManager = new javaw_lang_Object();
        self.columnFamilyStores = prepare_CFS(self);
    }
    public static javaw_util_HashMap_CFS prepare_CFS(org_apache_cassandra_db_Keyspace keyspace){
        javaw_util_HashMap_CFS result = new javaw_util_HashMap_CFS();
        javaw_util_HashMap_CFSNode[] nodes = new javaw_util_HashMap_CFSNode[Database.CFSNumber];
        for(int i = 0; i < Database.CFSNumber; i += 1){
            javaw_util_HashMap_CFSNode singlenode = new javaw_util_HashMap_CFSNode();
            javaw_util_UUID uuid = new javaw_util_UUID();
            org_apache_cassandra_schema_TableId tableid = new org_apache_cassandra_schema_TableId();
            tableid.id = uuid;
            org_apache_cassandra_db_ColumnFamilyStore cfs = new org_apache_cassandra_db_ColumnFamilyStore();
            javaw_lang_String name = create_string();
            Object generator = new javaw_lang_Object();
            org_apache_cassandra_schema_TableMetadataRef metadata = new org_apache_cassandra_schema_TableMetadataRef();
            org_apache_cassandra_db_Directories directory = new org_apache_cassandra_db_Directories();
            init_ColumnFamilyStore(cfs, keyspace, name, generator, metadata, directory);
            singlenode.key = tableid;
            singlenode.value = cfs;
            nodes[i] = singlenode;
        }
        result.table = nodes;
        return result;
    }
    public static void init_metadata(org_apache_cassandra_schema_KeyspaceMetadata self, javaw_lang_String keyspacename){
        self.name = keyspacename;
    }
}
